Revision: ftp-utils--lord--1.0--patch-11
Archive: lord@regexps.com--2002
Creator: Tom Lord <lord@regexps.com>
Date: Mon Jan 21 19:37:16 PST 2002
Standard-date: 2002-01-21
Summary: don't use WNOHANG with waitpid unless you mean it
	 don't go from async signals into malloc
Keywords: 
New-files: {arch}/ftp-utils/ftp-utils--devo/ftp-utils--devo--1.0/lord@regexps.com--2002/patch-log/patch-6
  {arch}/ftp-utils/ftp-utils--lord/ftp-utils--lord--1.0/lord@regexps.com--2002/patch-log/patch-11
Modified-files: =NEWS ChangeLog
  ChangeLog.d/lord@regexps.com--2002/ChangeLog.lord--1.0
  with-ftp/with-ftp.c
New-patches: lord@regexps.com--2002/ftp-utils--devo--1.0--patch-6
  lord@regexps.com--2002/ftp-utils--lord--1.0--patch-11


I thought I was being conservative when I passed `WNOHANG' to waitpid
for processes that I'm certain have changed state -- that `waitpid'
would never return 0 in that circumstance.

While initially populating a revision library, I was proved wrong.
One of the many `with-ftp' invocations died when `waitpid' returned 0.
So, `WNOHANG' is gone.

The same incident pointed out a path from an asynchronous signal
handler into `printfmt' and ultimately `malloc', resulting in an
illegal re-entrancy to both `vu' and `malloc'.  Use `panic' instead.


